package visiopuce.objets;

import java.util.Date;

public class Resultat implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 4516321421863195461L;

	private Analyse analyse;

	private String chromosomes;
	private String commentaire;
	private Date dateRendu;
	private String formule;
	private String herite;
	private int idResultat;
	private boolean mozaique;

	private boolean rendre = false;
	private String resultat;
	private Utilisateur signataire;
	private TypeRendu typeRendu;

	private boolean signe = false;

	public Resultat() {

	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Resultat other = (Resultat) obj;
		if (idResultat != other.idResultat)
			return false;
		return true;
	}

	public Analyse getAnalyse() {
		return analyse;
	}

	public String getChromosomes() {
		return this.chromosomes;
	}

	public String getCommentaire() {
		return commentaire;
	}

	public Date getDateRendu() {
		return dateRendu;
	}

	public String getFormule() {
		return formule;
	}

	public String getHerite() {
		return this.herite;
	}

	public int getIdResultat() {
		return idResultat;
	}

	public String getResultat() {
		return this.resultat;
	}

	public Utilisateur getSignataire() {
		return signataire;
	}

	public TypeRendu getTypeRendu() {
		return typeRendu;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + idResultat;
		return result;
	}

	public boolean isMozaique() {
		return mozaique;
	}

	public boolean isRendre() {
		return rendre;
	}

	public void setAnalyse(Analyse analyse) {
		this.analyse = analyse;
	}

	public void setChromosomes(String chromosomes) {
		this.chromosomes = chromosomes;
	}

	public void setCommentaire(String commentaire) {
		this.commentaire = commentaire;
	}

	public void setDateRendu(Date dateRendu) {
		this.dateRendu = dateRendu;
	}

	public void setFormule(String formule) {
		this.formule = formule;
	}

	public void setHerite(String herite) {
		this.herite = herite;
	}

	public void setIdResultat(int idResultat) {
		this.idResultat = idResultat;
	}

	public void setMozaique(boolean mozaique) {
		this.mozaique = mozaique;
	}

	public void setRendre(boolean b) {
		this.rendre = b;
	}

	public void setResultat(String resultat) {
		this.resultat = resultat;
	}

	public void setSignataire(Utilisateur signataire) {
		this.signataire = signataire;
	}

	public void setTypeRendu(TypeRendu typeRendu) {
		this.typeRendu = typeRendu;
	}

	@Override
	public String toString() {
		String chaine = "Resultat [idResultat=" + idResultat;
		if (analyse != null) {
			chaine += " ,idAnalyse=" + analyse.getIdAnalyse();
		}
		if (signataire != null) {
			chaine += " ,idSignataire=" + signataire.getIdUtilisateur();
		}
		if (typeRendu != null) {
			chaine += ", idTypeRendu=" + typeRendu.getIdTypeRendu();
		}
		chaine += ", commentaire=" + commentaire + ", dateRendu=" + dateRendu + ", formule=" + formule + ", mozaique=" + mozaique + ", resultat=" + resultat + ", herite=" + herite +  ", signe=" + signe +", chromosomes=" + chromosomes + "]";
		return chaine;
	}

	public void setSigne(boolean signe) {
		this.signe = signe;
	}

	public boolean isSigne() {
		return signe;
	}

}
